精通Linux系列二十:什么是sudo和su
精通Linux系列点击关注公众号,AI&编程干货及时送达
成为超级用户
通常情况下,普通用户只能修改他们自己的文件。有一个特殊的用户,被称为超级用户或者root,他可以完全访问机器并在其上执行任何操作。你很少需要使用超级用户权限;事实上,只有在绝对必要的时候,你才应该使用它们,以避免意外地损害你的Linux系统。
你可以通过几种方式成为超级用户。一种是使用sudo
命令来获得单个命令的超级用户权限。只需输入“sudo”然后跟上命令。根据你机器上的sudo
配置,你可能需要输入你的密码:
→ sudo rm protected_file
密码: ******** 你的密码
如果你想让你的超级用户权限持续到多个命令,你可以使用sudo
来运行一个shell:
→ sudo bash
在通过cd
浏览很多受保护的目录之前,这是方便的。当作为超级用户执行完命令后,输入^D
或运行exit
来结束超级用户shell并重新变为你自己。如果你忘记了你的shell是一个超级用户shell还是一个普通的shell,你可以用whoami
命令来检查你的身份。如果你是超级用户,它将显示root
。
另一种成为超级用户的方式是使用su
命令,它也可以创建一个超级用户shell,但你需要一个不同的密码,称为root密码,来使用它。如果你不知道系统上的root密码,你就不能使用su
。(如果你自己安装了Linux,你在安装过程中选择了root密码):
→ su -l
密码: ******* root密码
#
你的shell提示符可能会变化,经常变为#号,来表示你是超级用户。
如果你向su
提供了一个用户名:
→ su -l sophia
密码: ******* Sophia的密码
你可以变成那个用户(只要你知道她的密码)。
sudo
和su
有重要的区别。su
在每个Linux系统上都是标准的,但你需要一个除你自己之外的密码来运行它。sudo
使用你自己的密码,但它必须被配置来这样做。对于有多个超级用户的系统来说,sudo
是更优的,因为它提供了对权限的精确控制(在 /etc/sudoers 文件中)并且甚至记录了运行的命令。
推荐阅读
你好,我是拾叁,7年开发老司机、互联网两年外企5年。怼得过阿三老美,也被PR comments搞崩溃过。这些年我打过工,创过业,接过私活,也混过upwork。赚过钱也亏过钱。一路过来,给我最深的感受就是不管学什么,一定要不断学习。只要你能坚持下来,就很容易实现弯道超车!所以,不要问我现在干什么是否来得及。如果你还没什么方向,可以先关注我,这里会经常分享一些前沿资讯和编程知识,帮你积累弯道超车的资本。